Jeg har nettopp installert Python 3.6.1 for MacOS X Når jeg prøver å kjøre konsollen (eller kjøre noe med Python3), kastes denne feilen: AttributeError: modul 'enum' har ingen attributt 'IntFlag' $ /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 Kunne ikke importere nettstedsmodulen Sporing (siste samtale sist): Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", linje 544, ihoved() Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", linje 530, i hovedsak kjent_stier = addusersitepackages (kjent_stier) Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", linje 282, i addusersitepackages user_site = getusersitepackages () Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", linje 258, i getusersitepackages user_base = getuserbase () # dette vil også sette USER_BASE Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", linje 248, i getuserbase USER_BASE = get_config_var ('brukerbase') Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py", linje 601, i get_config_var returner get_config_vars (). get (navn) Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py", linje 580, i get_config_vars importere _osx_support Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/_osx_support.py", linje 4, i importer re Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/re.py", linje 142, i klasse RegexFlag (enum.IntFlag): AttributeError: modul 'enum' har ingen attributt 'IntFlag' Klassen IntFlag eksisterer innen enum.py. Så hvorfor kastes AttributeError?
2021-01-02 08:12:54
Det er fordi enum ikke er standard biblioteksmodul. Du har sannsynligvis pakken enum34 installert. En måte å sjekke om dette er tilfelle, er å inspisere eiendommen enum .__ fil__ importer enum skriv ut (enum .__ fil__) # standard biblioteksplassering skal være omtrent som # /usr/local/lib/python3.6/enum.py Siden python 3.6 er enum34-biblioteket ikke lenger kompatibelt med standardbiblioteket. Biblioteket er også unødvendig, så du kan bare avinstallere det. pip avinstallere -y enum34 Hvis du trenger koden for å kjøre på pythonversjoner både <= 3.4 og> 3.4, kan du prøve å ha enum-compat som et krav. Den installerer bare enum34 for eldre versjoner av python uten standard biblioteksenum. | Ikke sikker på om du fortsatt har dette problemet. Jeg hadde et lignende problem, og jeg klarte å løse det ganske enkelt ved å deaktivere PYTHONPATH $ unset PYTHONPATH | For meg oppstod denne feilen etter installasjon av gcloud component app-engine-python for å integrere i pycharm. Avinstallering av modulen hjalp, selv om pycharm nå ikke lastes opp til app-motor. | Hvis noen kommer hit på grunn av å få denne feilen mens du kjører et Google-app-motor Python 3.7 standard miljøprosjekt i PyCharm, er alt du trenger å gjøre Forsikre deg om at konfigurasjonen som skal kjøres, er for Flask, ikke Google App Engine-konfigurasjon. Deaktiver deretter Google App Engine-støtte under Innstillinger >> Språk og rammeverk >> Google App Engine Årsaken er i henhold til denne lenken Det overordnede målet er at appen din skal være fullt bærbar og kjøres i ethvert standard Python-miljø. Du skriver en standard Python-app, ikke en App Engine Python-app. Som en del av dette skiftet, er du ikke lenger pålagt å bruke proprietære App Engine APIer og tjenester for appens kjernefunksjonalitet. For øyeblikket er ikke App Engine API-er tilgjengelig i Python 3.7-kjøretiden. Jeg antar at når vi oppretter et python 3.7-prosjekt i PyCharm som et Google-appmotorprosjekt, prøver det fortsatt å gjøre på samme måte som for en python2.7-app | FRASKRIVELSE: Vær så snill, @ juanpa.arrivillaga, hvis du ser dette svaret, er du velkommen til å skrive ditt eget, så fjerner jeg dette innlegget. @ juanpa.arrivillaga hadde nevnt ovenfor: Er det et filnavn enum.py i arbeidskatalogen din, av en eller annen sjanse? Dette var problemet jeg opplevde. Jeg var ikke klar over enum-modulen på python på det tidspunktet og hadde kalt testfilen min enum.py. Siden filnavnet er modulnavnet, var det en konflikt. Mer informasjon om moduler her: https://docs.python.org/2/tutorial/modules.html | Deaktivering av "Google App Engine Support" i pycharm-innstillinger løste dette problemet for meg. | Installering av versjon 1.1.8 av enum34 fungerte for meg. Jeg klarte å fikse dette ved å legge til enum34 = "== 1.1.8" til pyproject.toml. Tilsynelatende hadde enum34 en funksjon i v1.1.8 som unngikk denne feilen, men dette regret i v1.1.9 +. Dette er bare en løsning. De bedre løsning ville være at pakker bruker miljømarkører slik du trenger ikke å installere enum34 i det hele tatt med mindre det er nødvendig. Kilde: https://github.com/python-poetry/poetry/issues/1122 | Håken Lids svar hjalp til med å løse problemet mitt (takk!), I mitt tilfelle til stede i Python3.7 som kjører Flask i en Docker-container (FRA tiangolo / uwsgi-nginx-flask: python3.7-alpine3.7). I mitt tilfelle ble enum34 installert av et annet bibliotek (pip install smartsheet-python-sdk). For de som kommer med et lignende Docker-containerproblem, her er min siste Dockerfile (strippet til de aktuelle linjene): FRA tiangolo / uwsgi-nginx-kolbe: python3.7-alpine3.7 ... KJØR pipinstallasjon -r krav.txt KJØR avinstallering av pip -y enum34 ... | I tilfelle du må beholde PYTHONPATH for både python2 og python3, kan du skrive aliasuttalelser for å angi riktig PYTHONPATH i din bash_profile: Hardkode PYTHONPATH2- og PYTHONPATH3-variablene i ~ / .bash_profile, og legg til følgende aliaser på slutten av den: alias python = 'eksport PYTHONPATH = $ {PYTHONPATH2}; python' alias python3 = 'eksporter PYTHONPATH = $ {PYTHONPATH3}; python3' Min python (refererer til python2) ettersom jeg bruker python2 oftere. | Når jeg noen gang fikk dette problemet: AttributeError: modul 'enum' har ingen attributt 'IntFlag' bare kjør først kommandoen: deaktiver PYTHONPATH og kjør deretter ønsket kommando og fikk suksess i det. | Jeg gjorde ved å bruke pip install--ignore-installed enum34 Når ønsket bibliotek er installert, kan du se etter advarsler under byggingen. Jeg fikk en feil som dette: Bruk av eldre setup.py installasjon for fremtiden, siden pakke 'hjul' ikke er installert FEIL: pyejabberd 0.2.11 har krav enum34 == 1.1.2, men du vil ha enum34 1.1.10 som er inkompatibelt . For å fikse dette problemet, kjør nå kommandoen: pip freeze | grep enum34. Dette vil gi deg versjonen av den installerte enum34. Avinstaller det nå med pip avinstaller enum34 og installer den nødvendige versjonen på nytt som pip install "enum34 == 1.1.20" | Hvis du har dette problemet når du kjører tester i PyCharm, må du sørge for at den andre boksen ikke er merket av ikonfigurasjoner. | Jeg har Python 2 og Python 3 installert på datamaskinen min. Av en eller annen merkelig grunn har jeg i sys.path of Python 3 også en sti til sitepackage-bibliotekkatalogen til Python2 når re-modulen kalles. Hvis jeg kjører Python 3 og importerer enum og skriver ut (enum .__ file__), viser ikke systemet denne Python 2-banen til nettstedspakker. Så et veldig grovt og skittent hack er å modifisere modulen der enum importeres direkte (følg sporingsbanene) og sett inn følgende kode rett før du importerer enum: importer sys for i, p i enumerate (sys.path): hvis "python27" i p.lower () eller "python2.7" i p.lower (): sys.path.pop (i) importer enum Det løste problemet mitt. | Selv jeg hadde dette problemet mens jeg kjørte python -m grpc_tools.protoc --versjon Måtte stille inn PYTHONPATH til nettstedspakker og slå av alle ledetekstvinduene og det fungerte. Håper det hjelper for gRPC-brukere. | Jeg hadde dette problemet i ubuntu20.04 i jupyterlab i min virtuelle env-kjerne med python3.8 og tensorflow 2.2.0. Feilmelding var Sporing (siste samtale sist): Fil "/usr/lib/python2.7/runpy.py", linje 174, i _run_module_as_main "__main__", fname, loader, pkg_name) Fil "/usr/lib/python2.7/runpy.py", linje 72, i _run_code kjøre kode i run_globals Fil "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel_launcher.py", linje 15, i fra ipykernel importerer kernelapp som app Fil "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/__init__.py", linje 2, i fra .connect import * Fil "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/connect.py", linje 13, i fra IPython.core.profiledir importerer ProfileDir Fil "/home/hu-mka/.local/lib/python2.7/site-packages/IPython/__init__.py", linje 48, i fra .core.application import Søknad Fil "/home/hu-mka/.local/lib/python2.7/site-packages/IPython/core/application.py", linje 23 i fra traitlets.config.application importprogram, catch_config_error Fil "/home/hu-mka/.local/lib/python2.7/site-packages/traitlets/__init__.py", linje 1, i fra .traitlets import * Fil "/home/hu-mka/.local/lib/python2.7/site-packages/traitlets/traitlets.py", linje 49, i importer enum ImportError: Ingen modul heter enum problemet var at i symbolsk kobling i / usr / bin / python pekte på python2. Løsning: cd / usr / bin / sudo ln -sf python3 python Forhåpentligvis vil Python 2-bruken falle helt snart. | Jeg fikk dette problemet mens jeg installerte transformatorbiblioteket fra HuggingFace. Det skyldtes at pakken enum34 ble installert i miljøet mitt som overstyrte innebygd enum i Python. Denne pakken ble sannsynligvis installert av noe som gjelder foroverkompatibilitet som ikke lenger er nødvendig med Python 3.6+. Så løsningen er ganske enkelt, pip avinstallere -y enum34 | Dessverre hjalp ingen av forslagene meg, men etter litt mer googling av dette pip installere enenum løste det for meg | Hvis noen har dette problemet når du prøver å kjøre Jupyter-kjernen fra en virtualenv, er det bare å legge til riktig PYTHONPATH i kernel.json av virtualenv-kjernen (Python 3 i eksempel): { "argv": [ "/usr/local/Cellar/python/3.6.5/bin/python3.6", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "display_name": "Python 3 (TensorFlow)", "språk": "python", "env": { "PYTHONPATH": "/Users/dimitrijer/git/mlai/.venv/lib/python3.6:/Users/dimitrijer/git/mlai/.venv/lib/python3.6/lib-dynload:/usr/local/ Kjeller / python / 3.6.5 / Frameworks / Python.framework / Versjoner / 3.6 / lib / python3.6: /Users/dimitrijer/git/mlai/.venv/lib/python3.6/site-packages " } } | Ditt svar StackExchange.ifUsing ("editor", function () { StackExchange.using ("externalEditor", funksjon () { StackExchange.using ("snippets", function () { StackExchange.snippets.init (); }); }); }, "kodebiter"); StackExchange.ready (funksjon () { var channelOptions = { tagger: "" .split (""), id: "1" }; initTagRenderer ("". split (""), "" .split (""), channelOptions); StackExchange.using ("externalEditor", funksjon () { // Må utløse redaktøren etter utdrag, hvis utdrag er aktivert hvis (StackExchange.settings.snippets.snippetsEnabled) { StackExchange.using ("snippets", function () { createEditor (); }); } annet { createEditor (); } }); funksjon createEditor () { StackExchange.prepareEditor ({ useStacksEditor: false, hjerteslagType: 'svar', autoActivateHeartbeat: false, convertImagesToLinks: sant, noModals: sant, showLowRepImageUploadWarning: true, reputToPostImages: 10, bindNavPrevention: true, postfix: "", imageUploader: { brandingHtml: "Drevet av \ u003ca href = \" https: //imgur.com/ \ "\ u003e \ u003csvg class = \" svg-icon \ "width = \" 50 \ "height = \" 18 \ "viewBox = \ "0 0 50 18 \" fill = \ "none \" xmlns = \ "http: //www.w3.org/2000/svg \" \ u003e \ u003cpath d = \ "M46.1709 9.17788C46.1709 8.26454 46.2665 7.94324 47.1084 7.58816C47.4091 7.46349 47.7169 7.36433 48.0099 7.26993C48.9099 6.97997 49.672 6.73443 49.672 5.93063C49.672 5.22043 48.98324.61182 48.1414 4.61182C47.4335 4.61182 46.7256 4.91628 46.0943 5.50789C45.7307 4.9328 45.2525 4.66231 44.6595 4.66231C43.6264 4.66231 43.1481 5.28821 43.1481 6.59048V11.9512C43.1481 13.2535.6.6 / \ u003e \ u003cpath d = \ "M32.492 10.1419C32.492 12.6954 34.1182 14.0484 37.0451 14.0484C39.9723 14.0484 41.5985 12.6954 41.5985 10.1419V6.59049C41.5985 5.28821 41.1394 4.66232 40.1061 4.6623.666 .5948 10.8521 38.2696 11.5455 37.0451 11.5455C35.8209 11.5455 35.4954 10.8521 35.4954 9.60062V6.59049C35.4954 5.28821 35.0173 4.66232 34.0034 4.66232C32.9703 4.66232 32.492 5.28821 32.4924.949V \ "klipsregel = \" jevnmodet \ "d = \" M25.6622 17.6335C27.8049 17.6335 29.3739 16.9402 30.2537 15.6379C30.8468 14.7755 30.9615 13.5579 30.9615 11.9512V6.59049C30.9615 5.28821 30.4833 4.66131.46231.4 4.9497 8 28.1109 5.50789C27.499 4.86533 26.7335 4.56087 25.7005 4.56087C23.1369 4.56087 21.0134 6.57349 21.0134 9.27932C21.0134 11.9852 23.003 13.913 25.3754 13.913C26.5612 13.913 27.4607 13.4902 28.1109 12.612 12.6 12.983C28.1301 14.4373 27.2502 15.2321 25.777 15.2321C24.8349 15.2321 24.1352 14.9821 23.5661 14.7787C23.176 14.6393 22.8472 14.5218 22.5437 14.5218C21.7977 14.5218 21.2429 15.01288 21.724.24.26 7.09766 26.1024 7.09766C27.2119 7.09766 28.0918 7.94324 28.0918 9.27932C28.0918 10.6321 27.2311 11.5116 26.1024 11.5116C24.9737 11.5116 24.1317 10.6491 24.1317 9.27932Z \ "/ \ u003e \ u003cpath d = \ 25.216.216 13.8962C19.3298 13.8962 19.8079 13.2535 19.8079 11.9512V8.12928C19.8079 5.82936 18.4879 4.62866 16.4027 4.62866C15.1594 4.62866 14.279 4.98375 13.3609 5.88013C12.653 5.05154 11.6581 4.62866 10.3573 4.62866C9.34336 4.62866 8.57809 4.89931 7.9466 5.5079C7.58314 4.9328 7.10506 4.66232 6.51203 4.66232C5.47873 4.66232 5.00066 5.28821 5.00066 6.59049V11.9512C5.00066 13.2535.778 0232 7,58817 8,44431 6,91179 9,53458 6.91179C10.5104 6,91179 10,893 7,58817 10,893 8.94108V11.9512C10.893 13,2535 11,3711 13,8962 12,4044 13.8962C13.4375 13,8962 13,9157 13,2535 13,9157 11.9512V8.90741C13.9157 7,58817 14,3365 6,91179 15,4269 6.91179C16.4027 6,91179 16,8045 7,58817 16,8045 8,94108 V11.9512Z \ "/ \ u003e \ u003cpath d = \" M3.31675 6.59049C3.31675 5.28821 2.83866 4.66232 1.82471 4.66232C0.791758 4.66232 0.313354 5.28821 0.313354 6.59049V11.9512C0.313354 13.2535.82.726171 3.31675 11.9512V6.59049Z \ "/ \ u003e \ u003cpath d = \" M1.87209 0.400291C0.843612 0.400291 0 1.1159 0 1.98861C0 2.87869 0.822846 3.57676 1.87209 3.57676C2.90056 3.57676 3.7234 2.87869 3.7234 1.98861C3.7234 1.1159 2.90056 0.400291 1.87209 0.400291Z \ "fill = \" # 1BB76E \ "/ \ u003e \ u003c / svg \ u003e \ u003c / a \ u003e", contentPolicyHtml: "Brukerbidrag lisensiert under \ u003ca href = \" https: //stackoverflow.com/help/licensing \ "\ u003ecc by-sa \ u003c / a \ u003e \ u003ca href = \" https://stackoverflow.com / legal / content-policy \ "\ u003e (policy for innhold) \ u003c / a \ u003e", allowUrls: sant }, onDemand: sant, discardSelector: ".discard-answer" , straksShowMarkdownHelp: true, enableTables: true, enableSnippets: true }); } }); Takk for at du bidro med svaret på Stack Overflow! Sørg for å svare på spørsmålet. Gi detaljer og del din forskning! Men unngå ... Be om hjelp, avklaring eller svare på andre svar. Å komme med uttalelser basert på mening; sikkerhetskopier dem med referanser eller personlig erfaring. For å lære mer, se tipsene våre for å skrive gode svar. Utkast lagret Utkast kastet Registrer deg eller logg inn StackExchange.ready (funksjon () { StackExchange.helpers.onClickDraftSave ('# login-link'); }); Registrer deg ved hjelp av Google Registrer deg ved hjelp av Facebook Registrer deg ved hjelp av e-post og passord Sende inn Legg ut som gjest Navn E-post Påkrevd, men aldri vist StackExchange.ready ( funksjon () { StackExchange.openid.initPostLogin ('. New-post-login', 'https% 3a% 2f% 2fstackoverflow.com% 2fquestions% 2f43124775% 2fwhy-python-3-6-1-throws-attributeerror-module-enum-has- no-attribute-intflag% 23new-answer ',' question_page '); } ); Legg ut som gjest Navn E-post Påkrevd, men aldri vist Legg ut svaret ditt Kast Ved å klikke på “Legg ut svaret ditt” godtar du våre vilkår for bruk, personvernregler og policy for informasjonskapsler Er ikke svaret du leter etter? Bla gjennom andre spørsmål merket python python-3.x oppgir python-3.6 attributeerror eller still ditt eget spørsmål.